home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-21
/
wc_dv7a.zip
/
FOSSIL.DOC
< prev
next >
Wrap
Text File
|
1990-12-07
|
14KB
|
242 lines
10/14/90 T.T.
A rather recent development is the use of a Fossil Driver
with Desqview. A fossil driver basically takes over all the
management of serial I/O from Wildcat and external programs. By doing
this, the Fossil can provide optimized serial I/O above and beyond
what most BBS programs (such as Wildcat) and Doors can provide.
Fossils also offer the unique ability to support more than the
standard limit of four comm ports and nodes on one machine under DV,
since they allow different comm ports to share the same IRQ. This
means that on a fast 386/486 (25 MHz. or better), 8 nodes is possible
under DV by using one of the many multiple comm port I/O cards. The
fossil driver also usually provides much improved mutltitasking
performance than that which is available with programs directly under
DV, due to its intelligent time-slice releasing ability. Even if you
are only running 2 or 3 nodes, this alone can be reason enough to
switch to the use of a Fossil Driver.
The Fossil Driver of choice is X00. The current version of
X00 is X00V124.ZIP as of this writing, and is available on most
BBSes. Since the documentation included in the X00V124.ZIP Fossil
file is excellent, and since the setup of a Fossil Driver is highly
dependent on a user's hardware and software compliment, I have not
written a specific setup file for the use of the Fossil; I think you
will find the documentation included with the Fossil Driver to be
quite satisfactory as is. I have, however, included a sample,
generic config.sys line to invoke X00 so that you have an idea of its
use.
I recommend that you first get your system up and running
reliably under DV without using a fossil and then add the fossil if
you so choose. By doing it in this manner, you will minimize the
possible areas of conflict and make the initial trouble shooting of
your setup much easier...
The use of Fossil Drivers opens a new and exciting avenue to
Wildcat Sysops and I highly recommend consideration of this technique
of serial I/O under DV and other multi-taskers.
I have paraphrased some of the relevant Fossil documentation
from the included Fossil file to give you a brief overview of how the
Fossil Driver works and the advantages of using it:
WHAT IS X00
X00 is a Serial Input/Output (SIO) communications driver. It
provides an interface between an application program and the
serial communications hardware.
X00 was originally designed as a FOSSIL driver. FOSSIL is an
acronym containing the first character of several communications
programs. The FOSSIL specification is basically an extension of
the PC's BIOS services for serial communications.
X00 only works with 8250 (TYPE) serial I/O devices. Such devices
include the 8250A, 16450, 16550, 16550A and the 82510. If you
have a PC that is an IBM or near compatible which has a serial
communication port, it is likely that it contains one of these
devices. XU, a utility distributed with X00, will identify the
existence of compatible SIO devices.
Like other Device Drivers, X00 will do very little standing
alone. There must be an application(s) program to use X00 before
you will gain benefit.
Since the introduction of the FOSSILs, a great number of new
communications programs have come into existence. I like to
think that the FOSSILs are largely responsible for this. Many
programs that contain their own communications drivers have added
FOSSIL support. One notable example is RBBS.
Many programs written to use BIOS's serial communications
services will also work with X00. This gives those programs the
benefits of buffered interrupt driven I/O.
X00 loaded as a DOS Device Driver
If X00 is to be used as a DOS device driver, it must be installed
using the CONFIG.SYS file. For a precise description of the
CONFIG.SYS file and its function, please refer to your DOS
manual. Basically, you use a text editor to add a line to the
CONFIG.SYS file. The line that you add is DEVICE=X00.SYS
followed by optional parameters. The optional parameters will be
described later. If X00.SYS is not in the current directory you
will need to provide a DOS path to the directory containing X00.
For example, if X00.SYS is in a subdirectory called COMM on the
hard disk drive C, the line in the CONFIG.SYS file would be
DEVICE=C:\COMM\X00.SYS.
COMn and PORTn
X00 allows communications ports to be swapped around. That is,
the serial port that DOS calls COM1 can be mapped (reassigned) to
any X00 port. Therefore, when a reference in this document is
made about PORTn, it refers to the serial I/O device that is
mapped to that X00 port. When a reference is made to COM1
through COM8, it refers to the serial I/O device that DOS
knows/uses as COMn. Also worth noting is that DOS numbers the
serial I/0 devices starting at 1 (COM1 through COM8) and X00
numbers them starting at 0 (PORT0 through PORT7).
X00's default is to assign PORT0 through PORT7 to COM1 through
COM8.
DV
The DV command line option is only of interest to those using
DESQview. The default for this option is off. When on (DV
specified in the command line), X00 will make DESQview Pause
calls when it seems that the application program is idle. This
may make time available for other tasks to use. Refer to your
DESQview manuals for details about the DESQview pause command.
If you are using DESQview, try the DV option. If it does not
adversely affect your system, leave it enabled (on).
Multi-Tasking
By far, DESQview seems to be the multi-tasking software that X00
is most often used with. At the time of this writing, I
personally use DESQview to run a multi line BBS.
I believe it is best to load X00 before the multi-tasking program
and to load it as a device driver. This enables all windows
(tasks) access to X00. Loading X00 first also allows multiple
windows to share the same IRQ.
If you have loaded X00 prior to DESQview, you need to configure
the window for no communications. That is, answer NO to the
configuration questions, Uses Serial Ports and Optimize
communications. I also suggest that you enable printer
management within the window. Enabling printer management allows
a remote drop to DOS to work on many systems. The Optimize
communications option and the Printer management option are
established with the DESQview SETUP program. The Uses serial
ports (Y,N,1,2) option is in the "Change a Program" portion of
window configuration.
In several cases I have gained a significant increase in
performance by turning X00 on prior to executing a program. Two
notable cases are GATEWAY and DOORWAY. I used XU to turn X00 on.
For example, XU PORT:n:ON just before invoking DOORWAY or GATEWAY
produced significantly better input and output from the programs.
Depending on your environment, an XU PORT:n:OFF may have to be
issued after the program terminates. Also note that the n for
PORTn is 1 less than the n in GATEn and COMn.
The communications windows seem to work better if the ticks for
the foreground and background are set relatively low. Most
people that I have talked to use 2 ticks for both foreground and
background. Only experimentation will determine the best setting
for your system.
If you do not wish to share an IRQ, you can load X00 as a TSR
inside a DESQview window. When loaded inside a DESQview window,
X00 is only available to programs in that window. X00 should be
configured to support only 1 serial port and you should
specifically name the port that X00 will use in the command line.
For example use X00 0=COM1, instead of X00 1 or just plain X00.
Identifying the specific serial port to be used in the window
eliminates the chance that X00 will interfere with another active
window.
I strongly recommend that you use the 16550A (or later) SIO chip
if you are using a multi-tasking system of any kind.
Appendix C, Multi-Port Serial I/0 Cards
I get many requests for information about multi-port serial I/O
card. I will describe the boards that I know about (or have
heard about) here. I will add to the list as I receive precise
information from users.
My personal experience is with two boards that allow multiple
serial I/O ports to share a single IRQ. The first board that I
experimented with was the Connect-Com 4 from Software Link in
Atlanta Georgia. The second board is the 4 PORT RS-232 CARD from
Decision-Computer International in Taipei, Taiwan.
Connect-Com 4
I found the manual for the Connect-Com 4 to be very confusing and
their tech support even less helpful. I was able to get the
board configured to use the standard COM1 and COM2 and the
defacto standard for COM3 and COM4. If you use the Connect-Com
4, I suggest that you use it in this manner. This means that
COM1 and COM3 will use IRQ4 and COM2 and COM4 will use IRQ3. The
Connect-Com 4 has an 8 position DIP switch for configuration.
The setting that I used was positions 2, 3, 7 and 8 ON (up), and
all other positions OFF (down). In retrospect the Connect-Com 4
seems a bit expensive. However, once configured properly, the
Connect-Com 4 worked without problem. Software Link can be
reached in Atlanta Georgia at 404-448-5465.
4 and 8 Port Boards from Decision-Computer
The second board that I have personally used, and the one that I
am currently using is from Decision-Computer. The manual is
written well enough that I did not need any technical support.
There are two boards of interest from Decision-Computer, one is a
4 port serial I/O card and the other is an 8 port serial I/O
card. I read somewhere in the documentation (which I can not
find at this time) that the boards are a clone of boards
available from AST.
The boards from Decision-Computer are configured by jumpers. I
use 4 ports of the 8 port card. I selected the (so called)
Compatible Mode. This means that the first two serial I/O ports
operate as standard COM1 and COM2 using IRQ4 and IRQ3
respectively. The jumper setting for Compatible Mode is clearly
shown in the manual (page 8 of my manual). The I/O port
addressed used in that mode are also clearly defined on the same
page.
A second jumper that must be set (JP2) defines the number of wait
states. I set the jumper in position 3 which means 2 wait
states. This was for a 20 mhz 386 system. This setting works
fine for me. More wait states may be required or less may work
on your system. The amount of time lost due to wait states for
serial I/O is very minimal.
The last jumper(s) for the Decision-Computer 8 port RS-232 board
is the selection of the IRQ(s) for ports other than the first 2.
I selected IRQ3 for the additional ports that I am using (I am
only using 4 of the 8). This means that the first port (COM1) is
using IRQ4, all of the other (3) ports are using IRQ3. Position
2 of JP3 (left side) is the jumper that I installed.
Stargate Plus 8 board from Software Link
Dan Fox originally helped me with the testing of multiple serial
I/O ports sharing a single IRQ. He informed me that the serial
I/O board that he uses is a Stargate Plus 8 Board. He purchased
the board from Software Link in Atlanta Georgia, 404-448-5465.
Dan has all 8 ports using IRQ3.
-EOF-